
;
/**
 * @author ysy
 * @Data 2018-03-10
 * 本对象，用于加载CRE资源库，并讲选择的资源回传至调用该页面的Ueditor
 */
creManager = (function($, window, document) {
	var thisContext;
	var topUtil; //工具类
	var portalServerPath;
	var releaseServerPath;
	var myCREObj;//每页数据集合
//	var typeList=1;//列表展现模式0：列表方式，1:图标方式
	var isOneOpen=0;//是否第一次打开
//	var isOneOpenTree=0;//是否第一次打开树
	var accessStructure = "";//访问目录路径结构
	var zNodes=new Array();;//文件夹结构数据集合
	var allNode=new Array();
	var zTreeObj;//树形对象
	var treedata;//文件夹结构数据集合
	var treedataAll=new Array();//文件夹结构数据集合
	var refreshPage = true;
	var accessOneIcon='<span class="glyphicon glyphicon-home"/>';//面包屑导航的根节点图标
	var accessIcon='<span class="glyphicon glyphicon-chevron-right"/>';//面包屑导航的节点链接符号
	var showMode;
	var chooseAllPic = false; // 复选框
	// 用户信息相关
	var portalKey; //用户信息的redisKey
	var userId;
	var userName;
	var tenantId;
	var token;
	var cloudType;
	// 稿件信息相关
	var manuscriptid;
	var crefolderName;
	var manuscripttype;
	var attachment_type; //附件类型
	var callBack; //回调函数名
	// CRE资源相关
	var search_txt;  //资源搜索关键词
	var select_type; //资源类型  【与资源域ID相同,查询资源用 0:公共资源; 1:群组资源; 2:个人资源 ;"":选题目录】
	var crefolderId; //CRE资源目录Id 【查询资源用】
	var parentFolderId; //资源域ID(0:公共资源; 1:群组资源; 2:个人资源) 【查询目录用】
//	var select_type_doc;//资源域类型
//	var showFolderId;
	// 分页数据
	var totalPage;
    var pageSize;
    var totalCount;
    var currentPage;
    var sortColumn;
	var direction;
	var  treedataAllId;
	var  currenAajx=null;
	var clickFlag = null;
	var CreManagerClass = function(){
		debugger
	};
	CreManagerClass.prototype = {
			constructor:CreManagerClass,
			//初始化
        init : function() {
        	thisContext = this;
        	topUtil = window.parent.cmedit.global;
        	portalServerPath = window.parent.cmedit.global.portalPath;
        	releaseServerPath = window.parent.cmedit.global.cmsPath;
        	if(!releaseServerPath){
        		alert("session中未获取到通稿服务地址");
        		return false;
        	}
        	thisContext.initViewStyle();
        	thisContext.initData();
        	// 监听页面加载完成
        	window.addEventListener("load",function(){
        		// 初始化资源域数据
        		thisContext.initCreFolderData();
        	});
        },
        /**
         * 初始化数据
         */
        initData : function() {
        	// 初始化数据展示方式为图标方式
        	showMode = 'box';
			// 设置个人资源域Id 【公共资源、群组资源在html中定义】
			$("#select_type li[value='2']").attr("name",userId + "_FOLDER_ID_PERSON");
			//获取URL中的参数
			thisContext.initUrlParameter();
			// 初始化页面文件类型数据
            thisContext.initAttachmentType();
            // 初始化资源域数据
//			parentFolderId = $(".headTab_active").val();
//			if(parentFolderId == undefined || parentFolderId =='undefined'){// 若未指定资源域id，设置公共为默认
//				parentFolderId = '0';
//				select_type = parentFolderId;
//				crefolderId = '_PUBLIC_DOMAIN_';
//				$("#select_type li[value='0']").addClass('headTab_active');
//			}
            // 初始化树形目录
//        	thisContext.initTree();
        },
        /**
         * 初始化页面视图
         */
        initViewStyle : function() {
        	// 列表模式
            $('.line-body').css('height',$('.creResourceCont').height()-204+'px');
            // 大图模式
            $('.res-listbox').css('height',$('.creResourceCont').height()-204+'px');
        },
        /**
         * 初始化事件
         */
        initEvent : function() {
            //按钮组样式切换
           /*$('.res-btns').find('span').on('click',function(){
                $(this).addClass('btn_active').siblings().removeClass('btn_active');
                $(this).css('color','#fff').siblings().css('color','#666');
           });*/
            $('.show_style').find('i').on('click',function(){
                $(this).css('color','#1790ff').parent().siblings().find('i').css('color','#000');
            });
            //列表样式切换
            $('.line-style').on('click',function(){
                $('.div_line').show();
                $('.div_box').hide();
            	$('.res-listbox').html("");
            	var data = {
					list : myCREObj
				};
            	thisContext.showLineHtml(data);
                showMode = 'line';
            });
            $('.box-style').on('click',function(){
                $('.div_line').hide();
                $('.div_box').show();
                $('.line-body').html("");
                var data = {
					list : myCREObj
				};
                thisContext.showBoxHtml(data);
                showMode = 'box';
            });
            // 选题目录与文件夹切换
            $('.leftTab li').on('click',function(){
                $(this).addClass('leftTab_active').siblings().removeClass('leftTab_active');
                accessStructure="";//清空访问目录结构，重构访问目录
                $("#accessStructureDiv").html("");
                if(zTreeObj != undefined){ //如果不是第一次加载树，取消所有节点的选中状态
                	zTreeObj.cancelSelectedNode(); 
                }
                if($(this).attr("value") == 'topic'){ //当前选中为选题目录
                	// 取消资源域的选中状态
                	$("#select_type li").removeClass('headTab_active');
                	attachment_type = 7; //设置文件类型为文件夹
                	select_type = ""; // 置空资源域Id
                	crefolderId = ""; // 置空CRE文件夹Id
                	thisContext.getResourceListAndPage();
                }else if($(this).attr("value") == 'folder'){//当前选中为文件夹
                	select_type = parentFolderId;
                	crefolderId = $(".header_tabs li[value="+select_type+"]").attr('name');
                	// 选中当前资源域
                	$("#select_type li[value="+ select_type +"]").addClass('headTab_active').siblings().removeClass('headTab_active');
//                	thisContext.getResourceListAndPage();
                	thisContext.initTree();
                }
            });
            // CRE资源库类型切换
            $('.header_tabs li').on('click',function(){
            	zNodes=new Array();
            	allNode=new Array();
                $(this).addClass('headTab_active').siblings().removeClass('headTab_active');
                accessStructure="";//清空访问目录结构，重构访问目录
                $("#accessStructureDiv").html("");
                $(".leftTab li").removeClass('leftTab_active');//取消资源目录的选中状态
                $(".leftTab li[value='folder']").addClass('leftTab_active');//选中文件夹
                isOneOpen=0;//设置为第一次打开
                //更新资源域ID值：parentFolderId
                parentFolderId = $(this).attr('value');
                //crefolderId = $(this).attr('name');
                crefolderId = parentFolderId;
                select_type = parentFolderId;
             // 默认选中第一个节点
 			    var node = zTreeObj.getNodeByParam('order', 0);//获取id为1的点  
 			    zTreeObj.selectNode(node);//选择点
                thisContext.initTree();
                //thisContext.getResources();
                
            });
     /*       // 资源复选框
            $(".attachment_line").on('click',function(){
            	var isCheck = false;
            	if($(this).prop("checked")){//如果当前操作为选中
            		isCheck = true;
            	}
            	$(".attachment_line").prop("checked",false);
            	if(isCheck){
            		$(this).prop("checked",true);
            	}else{
            		chooseAllPic = true;
            	}
            	// 展示图片
            	$("#line-" +$(this).val()).click();
            });
            $(".attachment_box").on('click',function(){
            	var isCheck = false;
            	if($(this).prop("checked")){//如果当前操作为选中
            		isCheck = true;
            	}
            	$(".attachment_box").prop("checked",false);
            	if(isCheck){
            		alert("选中");
            		$(this).prop("checked",true);
            		// 展示图片
            	}else{
            		alert("取消选中");
            		chooseAllPic = true;
            	}
            	$("#box-" +$(this).val()).click();
            });*/  
                 
        },
        /**
         * 从iframe的url中获取用户相关、稿件相关参数
         */
        initUrlParameter : function(){
        	// 从URL中(根据参数名)获取参数值
//        	portalKey = topUtil.getParameterFromUrl("portalKey");
            // 稿件相关数据【URL中获取】
        	manuscriptid = thisContext.getParameterFromUrl("mainGuid");
        	crefolderId = thisContext.getParameterFromUrl("crefolderId");  // 指定选题目录：a659de4e-dea9-47b0-86ce-58858c0433ef
        	crefolderName = decodeURI(thisContext.getParameterFromUrl("crefolderName"), "utf-8"); 
        	manuscripttype = thisContext.getParameterFromUrl("manuscripttype");
        	callBack = thisContext.getParameterFromUrl("callBack");
        	// 用户信息【父页面session中获取】
        	userId = window.parent.sessionStorage.getItem("userId");
        	userName = window.parent.sessionStorage.getItem("userName");
        	tenantId = window.parent.sessionStorage.getItem("tenantId");
        	token = window.parent.sessionStorage.getItem("token");
        	// TODO：【待删除】手动设置用户数据
//        	userId = "admin"
//        	userName = "0003-biu";
//        	tenantId = "dayang.com";
//        	token = "token-biu";
//        	cloudType = "false";
//        	portalKey = "aab5a93c-ab36-481a-90b7-69f986631edc_PORTAL";
//        	manuscriptid = "fafafafa";
//        	crefolderId = "";
//        	crefolderName = ""; 
//        	manuscripttype = "4";
        	// 将用户信息存储到页面session域
        	window.sessionStorage.setItem("userId",userId);
        	window.sessionStorage.setItem("userName",userName);
        	window.sessionStorage.setItem("tenantId",tenantId);
        	window.sessionStorage.setItem("token",token);
        	window.sessionStorage.setItem("cloudType",cloudType);
        	
        	/*window.sessionStorage.setItem("portalKey",portalKey);
        	window.sessionStorage.setItem("manuscriptid",manuscriptid);
        	window.sessionStorage.setItem("crefolderId",crefolderId);
        	window.sessionStorage.setItem("crefolderName",crefolderName);
        	window.sessionStorage.setItem("manuscripttype",manuscripttype);*/
        	// 初始化用户信息
//        	thisContext.intiUserInfo();
        },
        /**
         * 初始化页面文件类型数据
         *   
         */
        initAttachmentType : function(){
    		//设置网页类型稿件所能使用的附件类型，默认选中视频
    		if (manuscripttype == "0" && attachment_type == null) {
    			$("select[name='attachment_type']")
    					.html(
    							'<option id="attachment_type_0" value ="0,7,1,3,16">全部</option>'//全部
    									+ '<option id="attachment_type_0" value ="0" >视频</option>'//视频
    									+ '<option id="attachment_type_7" value ="7" >文件夹</option>'//文件夹
    									+ '<option id="attachment_type_1" value ="1" >音频</option>'//音频
    									+ '<option id="attachment_type_3" value ="3">图片</option>'//图片
    									+ '<option id="attachment_type_16" value ="16">新闻线索</option>');//新闻线索
    			attachment_type = "0,7,1,3,16";
    		}
    		//设置微信类型稿件所能使用的附件类型，默认选中图片
    		if (manuscripttype == "1" && attachment_type == null) {
    			$("select[name='attachment_type']")
    					.html(
							'<option id="attachment_type_3" value ="3,7,16">全部</option>'//全部
									+ '<option id="attachment_type_3" value ="3">图片</option>'//图片
									+ '<option id="attachment_type_7" value ="7" >文件夹</option>'//文件夹
									+ '<option id="attachment_type_16" value ="16">新闻线索</option> ');//新闻线索
    			attachment_type = "3,7,16";
    		}
    		// TODO：设置微博类型稿件所能使用的附件类型
    		if (manuscripttype == "2" && attachment_type == null) {
    			alert("微博稿件，未确认是否使用CRE资源！！");
    		}
    		//设置电视类型稿件所能使用的附件类型，默认选中视频
    		if (manuscripttype == "3" && attachment_type == null) {
    			$("select[name='attachment_type']")
    					.html(
							'<option id="attachment_type_0" value ="0,7,16" >全部</option>'//全部
									+ '<option id="attachment_type_0" value ="0" >视频</option>'//视频
									+ '<option id="attachment_type_7" value ="7" >文件夹</option>'//文件夹
									+ '<option id="attachment_type_16" value ="16">新闻线索</option>');//新闻线索
    			attachment_type = "0,7,16";
    		}
    		//设置通稿类型稿件所能使用的附件类型，默认选中视频
    		if (manuscripttype == "4" && attachment_type == null) {
    			$("select[name='attachment_type']")
    					.html(
							'<option id="attachment_type_0" value ="0,7,1,3,16">全部</option>'//全部
									+ '<option id="attachment_type_0" value ="0" >视频</option>'//视频
									+ '<option id="attachment_type_7" value ="7" >文件夹</option>'//文件夹
									+ '<option id="attachment_type_1" value ="1" >音频</option>'//音频
									+ '<option id="attachment_type_3" value ="3">图片</option>'//图片
									+ '<option id="attachment_type_16" value ="16">新闻线索</option>');//新闻线索
    			attachment_type = "0,7,1,3,16";
    			//attachment_type = "3,7,16";
    		}
       },
       /**
        * 初始化CRE资源域(搜索目录、资源)数据
        *  - 如果指定选题目录：直接跳转至该目录(面包屑导航同步)
        *  - 如果未指定：跳转到默认的(文件夹下)公共资源目录
        */
       initCreFolderData : function(){
    	   // 指定CRE资源域Id为默认值(公共资源)【用于生成树形菜单】
		   parentFolderId = '2'; 
    	   if(crefolderId != null && crefolderId != undefined && crefolderId.length > 0 && crefolderId != "undefined"){
    		   // 打开CRE资源页面时，指定了选题目录（直接跳转至选题目录）
    		   select_type = '';
    		   // 加载资源
    		   thisContext.onFolder(crefolderId,"-1",crefolderName);
    	   }else{
  			   // 指定默认的CRE目录Id(公共资源根目录)、资源类型(公共资源)
    		   select_type = parentFolderId;
   			   crefolderId = parentFolderId;
   			   //选中头部的公共资源域
   			   $("#select_type li[value='2']").addClass('headTab_active');
   			   // 初始化树形目录，并加载资源
	           thisContext.initTree();
//	           // 默认点击第一个
//			   var node = zTreeObj.getNodeByParam('order', 0);//获取id为1的点  
//			   zTreeObj.selectNode(node);//选择点 
    	   }
       },
        /**
         * 初始化目录树【利用Ztree】
         *  - 第一次进入时：默认加载公有资源下的树形菜单
         *  - 切换CRE资源域后：加载指定资源域下的树形菜单
         */
      
        initTree : function() {
        	
        	$('.manuLoader').show();
        	treedataAllId=new Array();
			if(treedataAll.length>0){
				$.each(treedataAll, function(n, tree) {
					treedataAllId.push(tree.id);
				})
			}
			if(currenAajx){
				debugger;
				currenAajx.abort();
			}
			
        	// 初始化树形菜单数据
			currenAajx= $.ajax({
				 	type : 'POST',
				    url : releaseServerPath + "CreFolderController/getCREFolder",
				    async: true,
				    dataType:"json",
				    data : {
						parentFolderId : crefolderId,
						portalServerPath: portalServerPath,
						recursively :false
					},
					beforeSend: function (XHR) {
	                    XHR.setRequestHeader("userId", userId);
	                    XHR.setRequestHeader("tenantId", tenantId);
	                    XHR.setRequestHeader("token", token);
	                    XHR.setRequestHeader("userName", encodeURIComponent(userName));
	                },
				    success:function(data){
				    	if (data.status == true || data.status == 'true') {
							treedata = data.data;
							$.each(treedata, function(n, tree) {
								if(treedataAll.length==0){
									treedataAll.push(tree);
								}else {
									if(treedataAllId.indexOf(tree.id)==-1){
										treedataAll.push(tree);
									}
								}
							});
							
							/*if(treedata.length>1)
								crefolderId=treedata[1].id;*/
                            var setting = {
                                async:{
                                    enable: true
                                },
                                view: {
                                    dblClickExpand: true,//双击展开
                                    showLayer: false,
                                    selectedMulti: false,//是否允许多选
                                },
                                check: {
                                    enable: true
                                },
                                data: {
                                    simpleData: {
                                        enable: true
                                    }
                                },
                                callback: {
                                    onClick : thisContext.clickTreeNode,
                                    onDblClick:thisContext.doubleClickTreeNode,
                                    beforeAsync: thisContext.zTreeBeforeAsync
                                }
                            };
							if(allNode.indexOf(crefolderId) == -1){
								allNode.push(crefolderId)
							}
							//zNodes = new Array();
							thisContext.recursionFolder(data.data,crefolderId);
							zTreeObj = $.fn.zTree.init($("#treeDemo"), setting, zNodes);
							// 初始化分页栏
				     	    $("#pagination").html("");// 清除分页数据
				        	// 初始化分页栏
							//thisContext.initPagination(pageSize,totalPage);
							// 默认点击第一个
				        	var node;
				        	//if(treedata.length>1)
				        	//	node = zTreeObj.getNodeByParam('id', treedata[1].id);//获取id为1的点  
				        	//else
				        		node = zTreeObj.getNodeByParam('id', treedata[0].id);//获取id为1的点
						    zTreeObj.selectNode(node);//选择点 
						    if(node){
							   crefolderId=data.data[0].id;
							  // var parentNode = treeNode.getParentNode();
					           accessStructure="";//清空访问目录结构，重构访问目录
					           $("#accessStructureDiv").html("");
					           if(data.data[0].eparent == "#"){ // 如果是根节点，不用加载面包屑导航栏
					        		//thisContext.getResourceListAndPage();
					           }else{
					            	thisContext.onFolder(crefolderId,data.data[0].eparent,data.data[0].text,"1");
					           }
							   //thisContext.onFolder();
							// 获取CRE资源并展现
					        //	thisContext.getResources();
						   }
						}else{
							alert(data.msg);
						}
				    },
				    error:function(err){
				        console.log(err);
				    }
				})
			/*currenAajx=topUtil.ajaxRequest({
				url : releaseServerPath + "CreFolderController/getCREFolder",
				type : 'POST',
				async: true,
				data : {
					parentFolderId : parentFolderId,
					portalServerPath: portalServerPath,
					recursively :false
				},
				dataType : "json",
				success : function(data){
					if (data.status == true || data.status == 'true') {
						treedata = data.data;
						$.each(treedata, function(n, tree) {
							if(treedataAll.length==0){
								treedataAll.push(tree);
							}else {
								if(treedataAllId.indexOf(tree.id)==-1){
									treedataAll.push(tree);
								}
							}
						});
						
						if(treedata.length>1)
							crefolderId=treedata[1].id;
						var setting = {
							view: {  
						        dblClickExpand: true,//双击展开  
						        showLayer: false,  
						        selectedMulti: false,//是否允许多选  
						    }, 
							check: {
								enable: true
							},
							data: {
								simpleData: {
									enable: true
								}
							},
							callback: {
								onClick : thisContext.clickTreeNode
							}
						};
						if(allNode.indexOf(parentFolderId) == -1){
							allNode.push(parentFolderId)
						}
						//zNodes = new Array();
						thisContext.recursionFolder(data.data,parentFolderId);
						zTreeObj = $.fn.zTree.init($("#treeDemo"), setting, zNodes);
						// 初始化分页栏
			     	    $("#pagination").html("");// 清除分页数据
			        	// 初始化分页栏
						//thisContext.initPagination(pageSize,totalPage);
						// 默认点击第一个
			        	var node;
			        	if(treedata.length>1)
			        		node = zTreeObj.getNodeByParam('id', treedata[1].id);//获取id为1的点  
			        	else
			        		node = zTreeObj.getNodeByParam('id', treedata[0].id);//获取id为1的点
					   zTreeObj.selectNode(node);//选择点 
					   if(node){
						// 获取CRE资源并展现
				        	thisContext.getResources();
					   }
					}else{
						alert(data.msg);
					}
				}
			});*/

        },
        zTreeBeforeAsync : function(treeId, treeNode){
            if(clickFlag) {
                //清除定时器，防止第二次点击生效
                clickFlag = clearTimeout(clickFlag); }
            crefolderId = treeNode.id;
            if(allNode.indexOf(crefolderId) == -1){
                thisContext.initTree();
            }
            return false;
        },
        /**
		 * 递归获取左侧目录列表(初始化Ztree基本数据)
		 */
		recursionFolder : function(data,parentFolderId){
			var order = 0;
			/*if(data[0].parent="#")
				zNodes=new Array();*/
			var nodeIdAll= new Array();
			$.each(zNodes, function(n, tree) {
				nodeIdAll.push(tree.id);
			})
			$(data).each(function(index,element){
				var node = new Object();
				var pid = element.parent;
				//if(parentFolderId != element.id){
					//if(allNode.indexOf(element.parent) == -1){
					//var dd=allNode;
						node.id  = element.id;
						node.pId = pid == '#' ? 0 :pid;
						if(allNode.indexOf(pid) == -1){
							allNode.push(pid)
						}
						node.name = element.text;
                        if(element.cretype == 1){
                            if(pid =='#'){
                                node.isParent = true;
                            }else{
                                if(element.hasChildren == true){
                                    node.isParent = true;
                                }else if(element.hasChildren == false){
                                    node.isParent = false;
                                }
                            }
                        }
						// 默认第一层菜单打开
						//if(pid == '#'){
							node.open = true;
						//}else{
						//	node.open = false;
						//}
						// TODO: 自定义属性
						node.order = order;
						order++ ;
						if(nodeIdAll.indexOf(node.id)==-1){
							zNodes.push(node);
						}
						return zNodes;
				//	}
			//	}
			});
		},
        /**
         * 初始化树形菜单点击事件【回调事件】
         * @param event
         * @param treeId  树形对应的div的id树形
         * @param treeNode 树节点对象
         */
        clickTreeNode : function(event, treeId, treeNode){
        	//取消上次延时未执行的方法
        	if(clickFlag) {
        		//清除定时器，防止第二次点击生效
        		clickFlag = clearTimeout(clickFlag);
        	}
        	clickFlag=setTimeout(function() {
        		BreadcrumbNavigation = '';
            	crefolderId = treeNode.id;
            	//parentFolderId=crefolderId;
            	/*if(allNode.indexOf(parentFolderId) == -1){
            		thisContext.initTree();
            	}*/
            	var parentNode = treeNode.getParentNode();
            	accessStructure="";//清空访问目录结构，重构访问目录
                $("#accessStructureDiv").html("");
            	if(parentNode == null){ // 如果是根节点，不用加载面包屑导航栏
            		thisContext.getResourceListAndPage();
            	}else{
                	thisContext.onFolder(crefolderId,parentNode.id,treeNode.name,"0");
            	}
        	},300)
        	//var  data=thisContext.initTree();
        	
        },
        /**
         * 初始化树形菜单点击事件【回调事件】
         * @param event
         * @param treeId  树形对应的div的id树形
         * @param treeNode 树节点对象
         */
        doubleClickTreeNode : function(event, treeId, treeNode){
        	//var  data=thisContext.initTree();
        	//BreadcrumbNavigation = '';
        	//取消上次延时未执行的方法 
        	if(clickFlag) {
        	//清除定时器，防止第二次点击生效
                clickFlag = clearTimeout(clickFlag); } 
        	crefolderId = treeNode.id;
        	//parentFolderId=crefolderId;
        	if(allNode.indexOf(crefolderId) == -1){
        		thisContext.initTree();
			}else{
        		var parentNode = treeNode.getParentNode();
            	accessStructure="";//清空访问目录结构，重构访问目录
                $("#accessStructureDiv").html("");
            	if(parentNode == null){ // 如果是根节点，不用加载面包屑导航栏
            		thisContext.getResourceListAndPage();
            	}else{
                	thisContext.onFolder(crefolderId,parentNode.id,treeNode.name,"1");
            	}
        	}
        	/*var parentNode = treeNode.getParentNode();
        	accessStructure="";//清空访问目录结构，重构访问目录
            $("#accessStructureDiv").html("");
        	if(parentNode == null){ // 如果是根节点，不用加载面包屑导航栏
        		//thisContext.getResourceListAndPage();
        	}else{
            	 thisContext.onFolder(crefolderId,parentNode.id,treeNode.name);
        	}*/
        },
        /**
         * 更加稿件类型加载附件类型
         */
        checkAttachment_type : function(){
        	var crefolderId = window.sessionStorage.getItem("manuscripttype");
        	if (manuscripttype != null && manuscripttype != undefined
        			&& manuscripttype == "0" && manuscripttype != "undefined") {
        		$("#attachment_type_0").show();
        		$("#attachment_type_1").show();
        	}
        },
        /**
         * 获取目录下的资源列表，并重新加载分页栏
         */
        getResourceListAndPage: function(){
        	// 初始化分页栏
     	    $("#pagination").html("");// 清除分页数据
        	// 获取CRE资源并展现
        	thisContext.getResources();
        	// 初始化分页栏
			//thisContext.initPagination(pageSize,totalPage);
        },
        
        /**
         * 初始CRE资源数据
         */
       getResources : function() {
    	    $('.manuLoader').show();
    	    search_txt = $("#search_txt").val();
//	       	select_type = $(".headTab_active").val(); 
	       	attachment_type = $("select[name='attachment_type']").val();
	       	currentPage = $(".whj_checked").attr("data-page");
	       	pageSize = $("select[name='whj_pageSize']").val();
	       	if(currentPage == null || currentPage == undefined){
	       		currentPage = 1;
	       	}
	       	if(pageSize == null || pageSize == undefined){
	       		pageSize = 12;
	       	}
	       	var sortColumnDirection = $("select[name='sortColumn']").val(); // 获取排序对象
	       	sortColumn = sortColumnDirection.split(" ")[0]; // 排序属性
	       	direction = sortColumnDirection.split(" ")[1]; // 排序方式
	       	var postData = {
					search_txt : search_txt,
					select_type : select_type,
					crefolderId : crefolderId,
					attachment_type : attachment_type,
					sortColumn : sortColumn,
					direction : direction,
					currentPage : currentPage,
					pageSize : pageSize,
					portalServerPath: portalServerPath,
				};
    	   // 初始化资源列表数据
			topUtil.ajaxRequest({
				url : releaseServerPath + "CreResouceController/getCreResouceLists",
				type : 'POST',
				async: true,
				data :postData,
				dataType : "json",
				success : function(data){
					isOneOpen = 1;//设置为不是第一次打开
					if (data.status == true || data.status == 'true') {
						myCREObj = data.data.list;
						var list = data.data.list;
						totalCount =  data.data.totalCount;
						totalPage =  data.data.totalPage;
						currentPage =  data.data.currentPage;
						pageSize =  data.data.pageSize;
						if(postData.crefolderId != crefolderId){
							return false;
						}
						if(totalCount == 0){
							refreshPage = false;
							// 如果未查询到返回数据
							var nullHtml = "<span id='isNullText' class='noResults'>无相关数据</span>";
							$('.res-listbox').html(nullHtml);
							$('.line-body').html(nullHtml);
						}else{
							refreshPage = true;
							list.manuscripttype = manuscripttype;
							var data = {
								list : list
							};
							if(showMode == "box"){// 如果子资源中没有任何数据【虽然有子资源，但是不满足条件，未进行显示】
								thisContext.showBoxHtml(data);
							}else if(showMode == "line"){
								thisContext.showLineHtml(data);
							}
						}
						$('.manuLoader').hide();
						thisContext.initPagination(pageSize,totalPage);
						thisContext.initEvent();
					}else{
						alert(data.msg);
					}
				}
			});

        },
        showBoxHtml : function(data){
        	var creResourceBox_html = template('creResource_Box', data);
			/*var nofileHtml = /(<div class=\"picShow\" id=\".+\">)\s*(<\/div>)/g;
			var replaceHtml = '$1<h4 style="color:red">不存在可用的资源</h4>$2'
			creResourceBox_html = creResourceBox_html.replace(nofileHtml,replaceHtml);// TODO:利用正则中的g，实现替换全部
*/			if(creResourceBox_html == ""){
				creResourceBox_html = "<span id='isNullText' class='noResults'>无相关数据</span>";
			}
			$('.res-listbox').html(creResourceBox_html);
        },
        showLineHtml : function(data){
        	var creResourceList_html = template('creResource_List', data);
			/*var nofileHtml = /<div class=\"linepicShow\">\s*<\/div>/g;
			var replaceHtml = '<div class="linepicShow"><h4 style="color:red">不存在可用的资源</h4></div>'
			creResourceList_html = creResourceList_html.replace(nofileHtml,replaceHtml);*/
			if(creResourceList_html == ""){
				creResourceList_html = "<span id='isNullText' class='noResults'>无相关数据</span>";
			}
			$('.line-body').html(creResourceList_html);
        },
        /**
         * 初始化分页插件【http://www.jq22.com/jquery-info17548】
         */
        initPagination : function (pageSize,totalPage) {
        	if(refreshPage){ //有数据则生成页码栏
                $("#pagination").whjPaging({
                    pageSizeOpt: [
                     {'value': 12, 'text': '12条/页', 'selected': true},
                     {'value': 16, 'text': '16条/页'},
                     {'value': 20, 'text': '20条/页'},
                     {'value': 24, 'text': '24条/页'}
                     ],
                    totalPage : totalPage,
                    showPageNum : 5,
                    firstPage: '<i class="iconfont icon-diyiye"></i>',
                    previousPage: '<i class="iconfont icon-shangyiye"></i>',
                    nextPage: '<i class="iconfont icon-xiayiye"></i>',
                    lastPage: '<i class="iconfont icon-weiye"></i>',
                    skip: 'skip',
                    confirm: 'go',
                    refresh: 'refresh',
                    totalPageText: 'the total {} pages',
                    isShowFL: true,
                    isShowPageSizeOpt: true,
                    isShowSkip: false,
                    isShowRefresh: false,
                    isShowTotalPage: false,
                    isResetPage: false,
                    callBack: function (currentPageNew, pageSizeNew) {
                        console.log('currPage:' + currentPageNew + 'pageSize:' + pageSizeNew);
                        currentPage = currentPageNew;
                    	pageSize = pageSizeNew;
                        thisContext.getResources();
                    }
                });
				$('#pagination').whjPaging('setPage',currentPage,totalPage);
        	}
        },
        
        /**
         * 点击文件夹执行检索事件
         * @param resourceId 选中的文件夹资源ID
         * @param parentId 该资源的父ID
         */
        onFolder : function(resourceId,parentId,resourceName,douOrClick){
        	var currentName;
        	if(resourceName=="" || resourceName==undefined){ // 如果没指定选题目录名称
        		currentName = $("#itemName_"+resourceId).attr('value');
        	}else{
        		currentName = resourceName;
        	}
        	// TODO : 更新各种下拉框数据
        	$("#search_txt").val(''); // 清空搜索框
			    $("select[name='attachment_type'] option:first").attr("selected", 'selected'); //默认选中第一个
			    $("select[name='sortColumn'] option:first").attr("selected", 'selected'); //默认选中第一个
        	//访问目录路径结构中是否包含该资源的父节点
        	if(parentId!=undefined && accessStructure.indexOf(parentId)!=-1){//包含
        		//将访问目录路径结构分组
        		var structures = accessStructure.split(accessIcon);
        		//点击的目录是否已经包含在访问的目录结构中
        		var isOfResourceId=false;
        		if(accessStructure.indexOf(resourceId)!=-1){
        			isOfResourceId=true;//包含在访问的目录结构中
        		}
        		accessStructure="";//清空访问目录结构，重构访问目录
        		for (var i = 0; i < structures.length; i++) {
        			if(i==0){
        				accessStructure=structures[i];
        			}else{
        				accessStructure=accessStructure+accessIcon+structures[i];
        			}
        			//该节点是否包含目录的父节点，追加目录节点
        			if(structures[i].indexOf(parentId)!=-1){
        				if(isOfResourceId){//点击的目录包含在访问目录中
        					//访问目录节点位置
        					if(i!=structures.length-1&&structures[i].indexOf(resourceId)==-1){
        						accessStructure=accessStructure+accessIcon+structures[i+1];
        					}
        				}else{//不在访问目录中就追加该目录信息
        					accessStructure=accessStructure+accessIcon+'<a onclick=\"creManager.onFolder(\''
        					+ resourceId
        					+ '\',\''+parentId+'\')\">'
        					+ currentName
        					+ '</a>';
        				}
        				break;
        			}
        			
        		}
        	}else{//父节点不包含在访问目录中
        		accessStructure="";
        		//递归从目录结构中获取访问目录结构
        		thisContext.recursivelyTreedata(resourceId);
        		$("#accessStructureDiv").html("");
        		//判断是否获取访问目录结构
        		if(accessStructure.length>0){
        			accessStructure=accessStructure.substring(0, accessStructure.length-accessIcon.length);
        		}else{
        				var resourceName="";
        				if(select_type == ""){  
        					select_type = "-1";
        					resourceName = "选题目录";//"选题目录";
        					parentId="-1";
        					var attachment_type="0";
        					if (select_type == "1"){
        						attachment_type="3";
        					}else{
        						attachment_type="0";
        					}
        				}else if(select_type=='0'){
        					resourceName = "公共资源";//"公共资源";
        				}else if(select_type=='1'){
        					resourceName = "群组资源";//"群组资源";
        				}else if(select_type=='2'){
        					resourceName = "个人资源";//"个人资源";
        				}
        				accessStructure=accessOneIcon+'<a onclick=\"creManager.getRootCreResouceLists('+select_type+',\''+parentFolderId+'\')">'+resourceName+'</a>'+accessIcon+'<a onclick=\"creManager.onFolder(\''
        				+ resourceId
        				+ '\',\''+parentId+'\')\">'
        				+ currentName
        				+ '</a>';
        		}
        	}
        	crefolderId = resourceId;
        	$("#accessStructureDiv").html(accessStructure);
        	thisContext.getResourceListAndPage();
        },
        /**
         * 递归，从目录结构中获取访问目录结构
         */
        recursivelyTreedata : function(resourceId){
        	if (treedataAll != null) {
        		$.each(treedataAll, function(n, tree) {
        			if (tree.id == resourceId) {
        				if (tree.id.indexOf('_PUBLIC_DOMAIN_') > -1
        						|| tree.id.indexOf('_FOLDER_ID_PERSON') > -1
        						|| tree.id.indexOf('_GROUP_DOMAIN_') > -1) {
        					accessStructure = accessOneIcon+'<a onclick=\"creManager.getRootCreResouceLists('+select_type+',\''
        							+ parentFolderId
        							+ '\')">'
        							+ tree.text
        							+ '</a>'
        							+ accessIcon
        							+ accessStructure;
        					return false;
        				} else {
        					accessStructure = '<a onclick=\"creManager.onFolder(\''
        							+ resourceId
        							+ '\',\''+tree.parent+'\')\">'
        							+ tree.text
        							+ '</a>'+ accessIcon + accessStructure;
        				}
        				thisContext.recursivelyTreedata(tree.parent);
        			}			
//        			}
        		});
        	}
        },
        
        /**
         * 获取根路径资源
         */ 
        getRootCreResouceLists : function(select_type,parentFolderId){
        	if(select_type === '' || select_type == "-1"){// 选题资源
        		$('.leftTab li[value="topic"]').click();
        	}else{ //CRE文件夹资源域
        		$('.header_tabs li[value='+select_type+']').click();
        	}
        },
        /**
         * BOX图片展示
         * @param type 该资源的类型
         * @param resourceId 该资源的ID 
         * @param parentId 资源父ID
         * 资源展示要求：
         * 	- Video资源：
         * 		- type为0(视频) + filetype为2(低码率)
         * 		- type为16(新闻线索) + filetype为2(低码率) + .MP3/.MP4
         *  - Audio资源：
         *      - type为1(音频) + filetype为1(单声道)、2(低码率)、6(立体声)
         *  - img资源：
         *      - filetype为9(Image)
         *      - type为3(图片) + filetype为2(低码率)
         *      - type为16(新闻线索) + 稿件类型不为微博 + 低码率 + .jpg
         *  
         */
        // TODO: 动态展现大图的子资源
        boxpicShow : function (e, type, resourceId, parentId){
        	if(type == '7'){ // 如果为文件夹，则进入
        		crefolderId = resourceId;
    			 thisContext.onFolder(resourceId,parentId);
        	}else{
        		$(".listboxPic").hide(); // 移除其他div
                $(e).siblings().removeClass('toggleShow');
                // 移除其他资源的复选框选中状态
//                $(e).siblings().find(".attachment_box").prop("checked",false);
                if($(e).hasClass('toggleShow')){ // 如果已经展示，则移除
                    $(e).removeClass('toggleShow');
                    return false;
                }else{
                	$(e).addClass('toggleShow');
                	//存在则显示，不存在则新建
                	if($("#boxPic-"+resourceId).length >0){
                		$("#boxPic-"+resourceId).closest(".listboxPic").show();
                	}else{
                		var creBoxpic_html = thisContext.getBoxPicHtml(resourceId,type);
                        var picNth=Math.floor($('.resboxOne').index(e)/4+1);
                        if(picNth == Math.ceil($('.resboxOne').length/4)){
                            $('.resboxOne').last().after(creBoxpic_html);
                        }else{
                            $('.resboxOne').eq(picNth*4-1).after(creBoxpic_html);
                        }
                	}
                	// 判断全选框状态：如果勾选则全部选中、如果未勾选则全部取消选中
//                    var isCheck = $(e).find("input[class='attachment_box']")[0].checked;
//                    if(isCheck){ //当前已选中
//                		$("#boxPic-"+resourceId+" img,video").attr("style","max-width:200px;max-height:200px;border:2px #3497db solid; padding:5px");
//            			$("#boxPic-"+resourceId+" img,video").addClass("boxPic_select");
//                	}else{//当前未选中
//                		$("#boxPic-"+resourceId+" img,video").attr("style","max-width:200px;max-height:200px;");
//                		$("#boxPic-"+resourceId+" img,video").removeClass("boxPic_select");
//                	}

                }
    
        	}
        }, 
        // 自定义播放按钮和控制条
        videoPlay : function(_this){
        	var videoUrl = $(_this).prev().attr("src");
        	thisContext.showPreviewModel(videoUrl);
//            var $this = $(_this);
//            var $video = $this.prev();
//            var video = $video[0];                 
//           /* $video.on('loadedmetadata', function() {                                       
//            });*/
//            var duration = video.duration; 
//            $this.next().find('.totaltime').html(creManager.timeFormat(video.duration));
//            $video.on('timeupdate', function() {
//                var current = video.currentTime;  
//                                     
//                $this.next().find('.playtime').text(creManager.timeFormat(current));
//                var percentage = current*100/duration;
//                $('.progresscircle').css('width', percentage+'%');
//            });
//            if(video.paused) {
//               video.play();
//               $this.removeClass('fa-play-circle');
//               $this.addClass('fa-pause-circle');
//               $video.parent().on('mouseout', function(){
//                    $video.next().hide();
//                    $this.next().hide();
//               });
//               $video.parent().on('mouseover', function(){
//                    $video.next().show();
//                    $this.next().show();
//               });
//            }
//            else {
//               video.pause();
//               $this.addClass('fa-play-circle');
//               $this.removeClass('fa-pause-circle');
//            }
        },
        videoProgress : function(_this, e){
            var $this = $(_this);
            var video = $this.parent().parent().find('video')[0];
            var length = e.pageX - $this.offset().left;
            var percent = length*100 / $this.width();
            $this.children().css('width', percent+'%');
            video.currentTime = percent * video.duration/100;
            
        },
        //显示分和秒
        timeFormat : function(seconds){
            var m = Math.floor(seconds/60)<10 ? "0"+Math.floor(seconds/60) : Math.floor(seconds/60);
            var s = Math.floor(seconds-(m*60))<10 ? "0"+Math.floor(seconds-(m*60)) : Math.floor(seconds-(m*60));
            return m+":"+s;
        },
        /**
         * 获取大图模式下的子资源
         * @param resourceId 资源ID
         * @param type  资源类型 【0：视频 1：音频 3：图片 7：文档 16：新闻线索】
         * @returns {String}
         */
        getBoxPicHtml : function(resourceId,type){
        	var boxHtml = "";
        	$.each(myCREObj,function(index,item){
        		if(item.id == resourceId){
        			var filelists = item.filelists;
        			var item;
        			item.list = filelists;
        			item.type = type;
        			item.id = resourceId;
        			item.manuscripttype = manuscripttype;
        			if(filelists.length > 0){
        				var data = {
								item : item
							};
        				boxHtml = "<div class='listboxPic'>" +"<div class='picShow' id='boxPic-"+resourceId+"'>";
        				boxHtml += template('creResource_Boxpic', data);
        				boxHtml += "</div></div>";
        				var nofileHtml = /(<div class=\'picShow\' id=\'.+\'>)\s*(<\/div>)/g;
        				var replaceHtml = '$1<h4 style="color:red">不存在可用的资源</h4>$2'
        				boxHtml = boxHtml.replace(nofileHtml,replaceHtml);// 利用正则中的g，实现替换全部
        			}else{
        				boxHtml = "<div class='listboxPic'>" +"<div class='picShow' id='boxPic-"+resourceId+"'>"
        							+ "<h4 style='color:red'>不存在可用的资源</h4>"
        							+ "</div></div>";
        			}
        		}
        	});
        	return boxHtml;
        },
        showPreviewModel: function(playUrl){             
//          $("#play_url_text").html(playUrl);
          var preview = '<source src="'+playUrl+'" type="video/mp4">';
          $("#preview_video").html(preview);
          $("#preview_video").attr("style","width:100%;height:100%;");
          $("body",window.top.document).append($("#resourcePreview"));
          $("#resourcePreview",window.top.document).show();
          $("#preview_video",window.top.document)[0].play();
          $("#modal_close", window.top.document).on("click", function(){
              $("body").append($("#resourcePreview",window.top.document));
              $("#resourcePreview").hide();
              // $("#resourcePreview",window.top.document).remove();
          });               
      },
        /**
         * Line图片展示
         */
        linepicShow : function (e, type, resourceId, parentId) {
        	if(type == '7'){
        		crefolderId = resourceId;
         	    thisContext.onFolder(resourceId,parentId);
        	}else{
        		 // 移除其他资源的复选框选中状态、及其他子资源
                 $(e).parent().siblings().find(".attachment_line").prop("checked",false);
                 $(e).parent().siblings().find('.linePic').removeClass('toggleShow');
                 $('.linePic').hide();
                 $(e).parent().siblings().find('.linePic').html("");
                 // 清除所有的图片选中状态
                 $(".linePic_select").attr("style","max-width:200px;max-height:200px;").removeClass('linePic_select');
                 if($(e).next().hasClass('toggleShow')){ //该资源下图片已经展示
                     $(e).next().removeClass('toggleShow');
                     $(e).next().hide();
                     $(e).next().html("");
                 }else{
                	 var creLinepic_html = thisContext.getLinePicHtml(resourceId,type);
                     $(e).next().addClass('toggleShow');
                     $(e).next().show();
                     $(e).next().html(creLinepic_html);
                 }
        	}
        },
        /**
         * 获取列表模式下的子资源,拼接为HTML
         * @param resourceId 资源ID
         * @param type  资源类型 【0：视频 1：音频 3：图片 7：文档 16：新闻线索】
         * @returns {String}
         */
        getLinePicHtml : function(resourceId,type){
        	var lineHtml = "";
        	$.each(myCREObj,function(index,item){
        		if(item.id == resourceId){
        			var filelists = item.filelists;
        			var item;
        			item.list = filelists;
        			item.type = type;
        			item.id = resourceId;
        			item.manuscripttype = manuscripttype;
        			if(filelists.length > 0){
        				var data = {
								item : item
							};
        				lineHtml += template('creResource_linePic', data);
        				var nofileHtml = /<div class=\'linepicShow\'>\s*<\/div>/g;
        				var replaceHtml = '<div class="linepicShow"><h4 style="color:red">不存在可用的资源</h4></div>'
        				lineHtml = lineHtml.replace(nofileHtml,replaceHtml);
        			}else{
        				lineHtml = "<div class='linepicShow'>"
        							+ "<h4 style='color:red'>不存在可用的资源</h4>"
        							+ "</div>";
        			}
        		}
        	});
        	return lineHtml;
        },
        
        /**
         * 选中列表方式资源复选框事件
         * @param _this 选中对象
         * @param type 资源类型
         * @param id 资源ID
         * @param parentId 资源父ID
         * @param e 冒泡处理对象
         */
        selectAllLinePic : function(_this,type, id,parentId, e) {
        	//阻止冒泡
        	e = e || window.event;
        	if(e.stopPropagation) {
        	    e.stopPropagation();
        	} else {
        	    e.cancelBubble = true;
        	}
        	if(type == '7'){ // 如果为文件夹，则进入
        		crefolderId = id;
    			thisContext.onFolder(id,parentId);
        	}
//        	if ($(e.target).is("input")){return false;} // 处理click事件被触发两次的问题【绑定点击的html元素中包含checkbox导致】
        	// 取消其他复选框的选中操作
//        	$(_this).parents(".reslineOne").siblings().find("input[class='attachment_line']").prop("checked",false);
//        	$(".linepicOne img,video").attr("style","max-width:200px;max-height:200px;");
//        	$(".linepicOne img,video").removeClass("linePic_select");
        	// 判断当前的选中状态
        	var isCheck = $("#line-"+id).find("input[class='attachment_line']")[0].checked;
        	// 判断当前的子资源展开状态 【判断图片展示div的id是否是当前资源id】
        	var isShow = $("#lineShow-"+id).hasClass("toggleShow");
        	if(isShow){ // 资源已展开
            	if(!isCheck){ //当前为选中操作
            		$("#linePic-"+id+" img,video").attr("style","max-width:200px;max-height:200px;border:2px #3497db solid; padding:5px");
        			$("#linePic-"+id+" img,video").addClass("linePic_select");
            	}else{//当前为取消选中操作
            		$("#linePic-"+id+" img,video").attr("style","max-width:200px;max-height:200px;");
            		$("#linePic-"+id+" img,video").removeClass("linePic_select");
            	}
        	}else{// 资源尚未展开:展开 + 选中所有
        		thisContext.linepicShow($(_this).parents(".ul-body"), type, id, parentId);
        		if(!isCheck){ //当前为选中操作
        			$("#linePic-"+id+" img,video").attr("style","max-width:200px;max-height:200px;border:2px #3497db solid; padding:5px");
        			$("#linePic-"+id+" img,video").addClass("linePic_select");
        		}
        	}
        },
        /**
         * 选中图标方式资源复选框事件
         * @param _this 选中对象
         * @param numTr 该资源附件所在行数
         * @param type 资源类型
         * @param id 资源ID
         * @param parentId 资源父ID
         * @param e 冒泡处理对象
         *  - 资源未展开 + 选中：
         *  - 资源已展开 + 选中：
         *  - 资源已展开 + 取消选中
         *  - 资源未展开 + 选中
         */
        selectAllBoxPic : function(_this, type, id, parentId, e) {
        	//阻止冒泡
        	e = e || window.event;
        	if(e.stopPropagation) {
        	    e.stopPropagation();
        	} else {
        	    e.cancelBubble = true;
        	}
        	if(type == '7'){ // 如果为文件夹，则进入
        		crefolderId = id;
    			thisContext.onFolder(id,parentId);
        	}
//        	if ($(e.target).is("input")){return false;} // 处理click事件被触发两次的问题【绑定点击的html元素中包含checkbox导致】
        	// 取消其他复选框的选中操作
//        	$(_this).parents(".resboxOne").siblings().find("input[class='attachment_box']").prop("checked",false);
//        	$(".picOne img,video").attr("style","max-width:200px;max-height:200px;");
//        	$(".picOne img,video").removeClass("boxPic_select");
        	// 判断当前的选中状态
        	var isCheck = $(_this).find("input[class='attachment_box']")[0].checked;
        	// 判断当前的子资源展开状态 【判断图片展示div的id是否是当前资源id】
        	var isShow = $(".picShow#boxPic-"+ id).length > 0;
        	if(isShow && $(".picShow#boxPic-"+ id).closest('.listboxPic').css('display') !='none'){ // 资源已展开
            	if(isCheck){ //当前为选中操作
            		$("#boxPic-"+id+"").find("img,video").attr("style","max-width:200px;max-height:200px;border:2px #3497db solid; padding:5px");
        			$("#boxPic-"+id+"").find("img,video").addClass("boxPic_select");
            	}else{//当前为取消选中操作
            		$("#boxPic-"+id+"").find("img,video").attr("style","max-width:200px;max-height:200px;");
            		$("#boxPic-"+id+"").find("img,video").removeClass("boxPic_select");
            	}
        	}else{// 资源尚未展开:展开资源+选中所有
        		thisContext.boxpicShow($(_this).parents(".resboxOne"), type, id, parentId);
        		if(isCheck){ //当前为选中操作
        			$("#boxPic-"+id+"").find("img,video").attr("style","max-width:200px;max-height:200px;border:2px #3497db solid; padding:5px");
        			$("#boxPic-"+id+"").find("img,video").addClass("boxPic_select");
        		}
        	}

        },
        
        /**
         * 检测大图模式下全选状态
         */
        checkAllSelect : function(resourceId){
//        	var count = $(".listboxPic img").length;
//        	count += $(".listboxPic video").length;
//        	var chooseCount = $(".listboxPic img[class='" + showMode +"Pic_select']").length;
//        	chooseCount += $(".listboxPic video[class='" + showMode +"Pic_select']").length;
        	var count = $("#boxPic-"+resourceId+" .picOne").length;
        	var chooseCount = $("#boxPic-"+resourceId+" .picOne .boxPic_select").length;
        	if(count!=undefined && chooseCount!=undefined && count==chooseCount){
        		$(".attachment_box[value='"+resourceId +"']").prop("checked",true);
        	}else{
        		$(".attachment_box[value='"+resourceId +"']").prop("checked",false);
        	}
        },
        /**
         * 检测列表模式下全选状态
         */
        checkLineAllSelect : function(resourceId){
        	var count = $(".toggleShow .linepicOne").length;
        	var chooseCount = $(".toggleShow ."+showMode+"Pic_select").length;
        	if(count!=undefined && chooseCount!=undefined && count==chooseCount){
        		$(".attachment_line[value='"+resourceId +"']").prop("checked",true);
        	}else{
        		$(".attachment_line[value='"+resourceId +"']").prop("checked",false);
        	}
        },
        /**
         * 资源图片点击事件[非电视稿件]
         */
        onImageClick : function(_this,resourceId){
        	// 获取图片Id
        	var thisRequestId= $(_this).attr("value");
        	var selectClass;
        	if(showMode == 'line'){// 当前是列表模式
        		selectClass = "linePic_select";
        	}else if(showMode == 'box'){// 当前是大图模式
        		selectClass = "boxPic_select";
        	}
        	if($(_this).hasClass(selectClass)){// 已被选中
        		$(_this).attr("style","max-width:124px;max-height:86px;vertical-align:middle;");
        		$(_this).removeClass(selectClass);
        	}else{
        		$(_this).attr("style","max-width:124px;max-height:86px;vertical-align:middle;border:2px #3497db solid; padding:5px");
        		$(_this).addClass(selectClass);
        	}
        	// 全选判断
        	if(showMode == 'box'){
        		thisContext.checkAllSelect(resourceId);
        	}else{
        		thisContext.checkLineAllSelect(resourceId);
        	}
        	
        },
        
        /**
         * 关闭CRE资源库页面
         */
        closeCREModalWindow : function(){
        	parent.window.cmedit.ManuscriptSystem.closeCREModalWindow();
        }, 
        /**
         * 回调稿件编辑页的方法，将选中的资源返回页面
         * @returns {Boolean}
         */
        insertCreLink : function(){
        	// 判断是否已经选中附件
        	var target; // 选中的附件的样式class
        	if(showMode == 'line'){ // 当前是列表模式
        		target = ".linePic_select"
        	}else if(showMode == 'box'){// 当前是大图模式
        		target = ".boxPic_select"
        	}
        	if($(target).length == 0){
        		alert("请选择至少一个文件！")
        		return false;
        	}
        	// 拼接附件数据
			var externalData = {};
			var attachments = [];
			// 获取稿件Id
			externalData.callId = manuscriptid;
			$(target).each(function(index,item){
				var attachment = {};
				var resourceAddr = $(item).attr("src");
				var attachType = $(item).attr("value");
				var resourceId = $(item).nextAll("input").eq(0).val();
				var resourceName = $(item).nextAll("input").eq(4).val();
    			attachment.resourceAddr = resourceAddr;
    			attachment.attachType = attachType;
    			attachment.resourceId = resourceId;
    			attachment.resourceName = resourceName;
    			attachments.push(attachment);
    		});
    		externalData.attachments = attachments;
    		// 传递message事件
    		function evil(fn) {
    			var Fn = Function; //一个变量指向Function，防止有些前端编译工具报错
				return new Fn('return ' + fn)();
			}
    		evil(callBack + "("+ JSON.stringify(externalData) + ")");
			
        },
        /**
         * 向调用本页面的Ueditor中插入选择的附件信息
         * @returns {Boolean}
         */
        insertCreLinkOld : function(){
        	// 判断是否已经选中附件
        	var target; // 选中的附件的样式class
        	if(showMode == 'line'){ // 当前是列表模式
        		target = ".linePic_select"
        	}else if(showMode == 'box'){// 当前是大图模式
        		target = ".boxPic_select"
        	}
        	if($(target).length == 0){
        		alert("请选择至少一个文件！")
        		return false;
        	}
        	alert("共选中："+ $(target).length);
        	// TODO: 获取稿件ID
        	// TODO: 拼接附件信息
        	var attachHtml = "";
        	$(target).each(function(index,item){
        		var type = $(item).attr("datatype"); 
        		var resourceId = $(item).nextAll("input").eq(0).val();
    			var resourceAddr = $(item).nextAll("input").eq(1).val();
    			var uncPath = $(item).nextAll("input").eq(2).val();
    			var ftpPath = $(item).nextAll("input").eq(3).val();
    			var resourceName = $(item).nextAll("input").eq(4).val();
    			var attachType = $(item).nextAll("input").eq(5).val();
    			var fileSize = $(item).nextAll("input").eq(6).val();
    			var resourceType = $(item).attr("value"); 
    			if (resourceType == 'picture') { 
    				// 附件为图片
    				attachHtml = '<img fileid="'
						+ resourceId + '" src="'
						+ $(item).attr("src")
						+ '"  width="600px" heigth="600px"></img>';
    			} else if (resourceType == 'audio') {
    				// 附件为音频
					attachHtml = '<p><span style="color: rgb(89, 89, 89); font-size: 20px;"><strong><span style="color: rgb(89, 89, 89); font-family: 微软雅黑, &#39;Microsoft YaHei&#39;;"></span></strong></span>'
						+ '<audio fileid="'
						+ resourceId
						+ '" id="media" src="'
						+ $(item).attr("src")
						+ '" controls=""></audio></p><p><br/></p>';
				} else if (resourceType == 'video') {// 视频
					attachHtml = '<img/><video fileid="'
						+ resourceId
						+ '" class="edui-upload-vio  vjs-default-skin video-js" controls="" preload="metadata" width="420" height="280" src="'
						+ $(item).attr("src")
						+ '" data-setup="{}"> '
						+ '<source fileid="'
						+ resourceId + '" src="'
						+ $(item).attr("src")
						+ '" type="video/mp4"/>'
						+ '</video><p><br/></p>';
				}
//    			alert(attachHtml);
    			parent.window.cmedit.ManuscriptSystem.writeCREResourceData(attachHtml);
//    			ue.execCommand('insertHtml', attachHtml); //将附件信息插回Ueditor
        	});
        	//关闭当然窗口
        	parent.close();
        },
        /**
         * 将cre资源插入稿件，关闭窗口 【远程调用模式（采用PostMessage）】
         * filetype: 0：标清；1：单声道；2：低码率（可同时表示视音频，图片和文档的低码文件）；3：服务器；4：关键帧；5：高清；
         */
        insertCreRemote : function(){
        	// 拼接附件数据
			var externalData = {};
			var attachments = [];
			// 获取稿件Id
			externalData.callId = manuscriptid;
			var target;
        	if(showMode == 'line'){ // 当前是列表模式
        		target = ".linePic_select"
        	}else if(showMode == 'box'){// 当前是大图模式
        		target = ".boxPic_select"
        	}
        	if($(target).length == 0){
        		alert("请选择至少一个文件！")
        		return false;
        	}
        	$(target).each(function(index,item){
    			var attachment = {};
    			var resourceId = $(item).nextAll("input").eq(0).val();
    			var resourceAddr = $(item).nextAll("input").eq(1).val();
    			var uncPath = $(item).nextAll("input").eq(2).val();
    			var ftpPath = $(item).nextAll("input").eq(3).val();
    			var resourceName = $(item).nextAll("input").eq(4).val();
    			var attachType = $(item).nextAll("input").eq(5).val();
    			var fileSize = $(item).nextAll("input").eq(6).val();
    			attachment.resourceId = resourceId;
    			attachment.resourceAddr = resourceAddr;
    			attachment.uncPath = uncPath;
    			attachment.ftpPath = ftpPath;
    			attachment.resourceName = resourceName;
    			attachment.attachType = attachType;
    			attachment.fileSize = fileSize;
    			attachments.push(attachment);
    		});
    		externalData.attachments = attachments;
    		alert(JSON.stringify(externalData));
    		// 传递message事件
    		window.parent.postMessage(JSON.stringify(externalData), '*');
        	alert("CRE资源插入成功");
        	//关闭当然窗口
        	parent.close();
        },
        /**
         * 根据URL中获取的portalkey，从redis中查询用户信息
         */
        intiUserInfo : function(){
        	// 获取redis中的用户信息
			$.ajax({
				async: false,
				url: portalServerPath + "UserInfoController/getUserInfo",
				data: {
					key : portalKey
				},
				type: 'POST',
				dataType : 'json',
				success : function(data){
					if (data.status == true || data.status == 'true') {
						var loginModel = data.data.loginModel;
						userId = loginModel.userId;
						userName = loginModel.userName;
						token = loginModel.token;
						tenantId = loginModel.tenantId;
						cloudType = loginModel.cloudType;
						window.sessionStorage.setItem("userId",userId);
			        	window.sessionStorage.setItem("userName",userName);
			        	window.sessionStorage.setItem("tenantId",tenantId);
			        	window.sessionStorage.setItem("token",token);
			        	window.sessionStorage.setItem("cloudType",cloudType);
					}else{
						// 跳转到登录页
						alert(data.msg);
						topUtil.switchToLogin(portalServerPath);
					}
				}
			});
        },
        
        //从url中根据名称获取参数
        getParameterFromUrl: function (parameterName) {
            var reg = new RegExp("(^|&)" + parameterName + "=([^&]*)(&|$)");
            var r = window.location.search.substr(1).match(reg);
            if (r != null)return decodeURI(r[2]);;
            return null;
        },
        /**
		 * 更新redis过期时间
		 */
        updatePortalStorageExpireTime : function(){
        	
        },
        empty : null
    };
	return new CreManagerClass();
})(jQuery, window, document);
$(creManager.init());
